package cn.jpms.mending

import org.gradlex.javamodule.moduleinfo.ExtraJavaModuleInfoPluginExtension

/**
 * MybatisPlusExtra
 *
 * @author 清寒
 */
class MybatisPlusExtra : ModuleExtraInfo {
    override fun config(ext: ExtraJavaModuleInfoPluginExtension) {
        // ext.module("com.baomidou:mybatis-plus", "com.baomidou.mybatis.plus") {
        //     overrideModuleName()
        //     exportAllPackages()
        // }
        // ext.module("com.baomidou:mybatis-plus-annotation", "com.baomidou.mybatis.plus.annotation") {
        //     overrideModuleName()
        //     exportAllPackages()
        // }
        // ext.module("com.baomidou:mybatis-plus-core", "com.baomidou.mybatis.plus.core") {
        //     overrideModuleName()
        //     exportAllPackages()
        //
        //     requiresTransitive("org.mybatis")
        //     requiresTransitive("com.baomidou.mybatis.plus.annotation")
        // }
        ext.module("com.baomidou:mybatis-plus-extension", "com.baomidou.mybatis.plus.extension") {
            overrideModuleName()
            exportAllPackages()
            requiresTransitive("com.baomidou.mybatis.plus.core")
            requires("org.slf4j")
            requires("java.sql")

            // 合并 mybatisPlus 的拆分包
            mergeJar("com.baomidou:mybatis-plus-spring")
            // mergeJar("com.baomidou:mybatis-plus-jsqlparser-4.9")
        }
        // ext.module("com.baomidou:mybatis-plus-jsqlparser-common", "com.baomidou.mybatis.plus.jsqlparser.common") {
        //     overrideModuleName()
        //     exportAllPackages()
        //     requiresTransitive("com.baomidou.mybatis.plus.extension")
        // }
        // ext.module("com.baomidou:mybatis-plus-spring-boot3-starter", "com.baomidou.mybatis.plus.spring.boot3.starter") {
        //     overrideModuleName()
        //     exportAllPackages()
        // }
        // ext.module("com.baomidou:mybatis-plus-spring-boot-autoconfigure", "com.baomidou.mybatis.plus.spring.boot.autoconfigure") {
        //     overrideModuleName()
        //     exportAllPackages()
        // }
    }
}
